﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Renci.Data.Interop.OpenGIS.Gml_32
{
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(TypeName = "MovingObjectStatusType", Namespace = "http://www.opengis.net/gml/3.2")]
    [System.Xml.Serialization.XmlRootAttribute("MovingObjectStatus", Namespace = "http://www.opengis.net/gml/3.2", IsNullable = false)]
    public class MovingObjectStatusType : AbstractTimeSliceType
    {
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("location", typeof(LocationPropertyType))]
        [System.Xml.Serialization.XmlElementAttribute("locationName", typeof(CodeType))]
        [System.Xml.Serialization.XmlElementAttribute("locationReference", typeof(ReferenceType))]
        [System.Xml.Serialization.XmlElementAttribute("pos", typeof(DirectPositionType))]
        [System.Xml.Serialization.XmlElementAttribute("position", typeof(GeometryPropertyType))]
        public object Item { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("speed")]
        public MeasureType Speed { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("bearing")]
        public DirectionPropertyType Bearing { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("acceleration")]
        public MeasureType Acceleration { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("elevation")]
        public MeasureType Elevation { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("status")]
        public StringOrRefType Status { get; set; }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("statusReference")]
        public ReferenceType StatusReference { get; set; }
    }
}
